package com.sh.data.engine.domain.annotation;

import com.sh.data.engine.domain.annotation.userlog.Business;
import com.sh.data.engine.domain.annotation.userlog.LogResult;
import com.sh.data.engine.domain.annotation.userlog.EngineOperation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface LogExecution {

    /**
     * 操作类型
     * Operation对应的是页面上的「操作」，以及「详细信息」
     */
    EngineOperation operation();

    /**
     * 业务类型
     * 其中Business确定的是页面上的「操作类型」和「所属模块」
     */
    Business business();

    /**
     * 操作结果
     */
    LogResult result() default LogResult.SUCCESS; // 默认值为成功

}
